Advanced Driver Assistance Systems (ADAS) installed in vehicles are useful for detecting objects such as other vehicles, pedestrians, traffic lights and signs in front of the vehicles, and generate alerts for the driver. Such systems are also useful in detecting various traffic situations including traffic jam, construction work, etc on the road and alert the driver regarding the same. A typical ADAS includes a camera placed on the dashboard of a vehicle for capturing images/videos of various events/objects in front of the vehicle, and a processing unit connected to the camera for executing multiple computer vision algorithms such as vehicle detection, pedestrian detection, traffic sign detection etc.
However, the complexity of the processing unit increases, when the multiple computer vision algorithms are executed concurrently for detecting one or more objects, or one or more events. Therefore, these computer vision algorithms need to be very efficient in executing the computationally complex object detection and scene analysis algorithms. The processing units are generally constrained in their computation and memory requirements. Therefore, running such multiple computer vision algorithms on such constrained devices is a challenging task.